#pragma once

#include"Common.h"

class ControlCommand
{
public:
	enum Type{DoNothing , Attack , Move , AttackMove};
	ControlCommand(Unit* who)
		:Who(who),
		Type(DoNothing),
		Target(NULL),
		TargetPosition(0 , 0),
		FrameDuration(0)
	{
	}
	ControlCommand()
		:Who(NULL),
		Type(DoNothing),
		Target(NULL),
		TargetPosition(0 , 0),
		FrameDuration(0)
	{
	}
	//--
	Unit* Who;
	Type Type;
	Unit* Target;
	Position TargetPosition;
	int FrameDuration;
};

typedef vector<ControlCommand> Move;